home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
C64
/
B-Business
/
(c)b3.d64
/
easy edit.c
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2008-11-26
|
4KB
|
149 lines
0 PRINT"[147]EASY EDIT[146]...ROBERT E. DRAKE (C)80/10/07"
1 POKE53280,0:POKE53281,0:PRINT"MODIFIED FOR C64 BY DAVID BRADLEY[146]"
2 PRINTCHR$(142):INPUT"UPPER CASE ONLY Y[157][157][157]";A$:IFA$="N"THENPRINTCHR$(14)
3 NM=1:DIMTX$(60):CR$=CHR$(13):DL$=CHR$(20):IN$=CHR$(148)
4 GOSUB111
5 GETA$:IFA$=""THEN5
6 IFA$="[147]"THENPRINTA$:GOTO4
7 K=0:FORI=1TO7:IFA$=MID$("ECSAPQL",I,1)THENK=I:I=7:GOTO8
8 NEXT
9 IFK<>0THENONKGOSUB11,16,52,57,66,89,90
10 GOTO5
11 GOSUB110:REM INPUT TEXT
12 IFNM>55THENPRINT"TEXT AREA FULL":RETURN
13 A$=STR$(NM):JJ=60:GOSUB114:GOSUB119:IFSR$="NIL"THENSR$="":GOSUB110:RETURN
14 TX$(NM)=SR$:SR$="":PRINT
15 NM=NM+1:GOTO12
16 REM CHANGE TEXT
17 PRINT"[147]ENTER SCREEN SAVE PRINT QUIT LOAD"
18 PRINT"CHANGE:[146] "
19 PRINT"CHANGE:[146]";:INPUT"WHICH LINE [191][157][157][157]";S
20 PRINT"CHANGE[146]:P[146]ART D[146]ELETE R[146]EPLACE I[146]NSERT C[146]OPY
21 [153]:[153]TX$(S)
22 [161]A$
23 [139]A$[178][199](13)[167][137]51
24 K[178]0:[129]I[178]1[164]5:[139]A$[178][202]("PDRIC",I,1)[167]K[178]I
25 [130]
26 [139]K[179][177]0[167][145]K[137]30,39,42,45,28
27 [137]22
28 [133]"COPY TO LINE #";H:TX$(H)[178]TX$(S):[139]H[177][178]NM[167]NM[178]H[170]1
29 [137]51
30 A$[178]"CHANGE WHAT":JJ[178]30:[141]114:[141]119:C$[178]SR$:SR$[178]"":[143] CHANGE
31 [153]:A$[178]"TO WHAT":JJ[178]30:[141]114:[141]119:B$[178]SR$:SR$[178]"":[139]B$[178]"NIL"[167]B$[178]""
32 Y[178]0:[129]T[178]1[164][195](TX$(S))
33 [139]C$[178][202](TX$(S),T,[195](C$))[167]Y[178]T:T[178][195](TX$(S))
34 [130]
35 [139]Y[178]0[167][141]111:[137]51
36 TX$(S)[178][200](TX$(S),Y[171]1)[170]B$[170][201](TX$(S),[195](TX$(S))[171]Y[171][195](C$)[170]1)
37 [153]:[153]"NEW LINE:"
38 [153]""TX$(S):[129]I[178]1[164]1600:[130]:[137]51
39 [129]I[178]S[164]NM:[143] DELETE THE LINE
40 TX$(I)[178]TX$(I[170]1):[130]
41 TX$(NM)[178]"":NM[178]NM[171]1:[137]51
42 A$[178][196](S):JJ[178]60:[141]114:[141]119:[143] REPLACE THE LINE
43 [139]SR$[178]"NIL"[167]SR$[178]"":[137]51
44 TX$(S)[178]SR$:SR$[178]"":[137]51
45 [139]NM[178]56[167][153]"CAN'T..OUT OF LINES":[129]I[178]1[164]1600:[130]:[137]51:[143] INSERT
46 NM[178]NM[170]1
47 [129]I[178]NM[164]S[169][171]1:TX$(I)[178]TX$(I[171]1):[130]:TX$(S)[178]""
48 A$[178][196](S):JJ[178]60:[141]114:[141]119
49 [139]SR$[178]"NIL"[167]SR$[178]"":[137]39
50 TX$(S)[178]SR$:SR$[178]""
51 [141]111:[142]
52 [141]111:[143] SCREEN PRINT
53 [133]"FROMWAIT SINCMDCMDCMD";S
54 [153]""[166]10);:[133]"TOWAIT SINCMDCMDCMD";F
55 [129]I[178]S[164]F:[153]""I"WAIT"TX$(I):[130]
56 [142]
57 [141]111:[141]144:[143] SAVE
58 D[178]1:SA[178]1:F$[178]FILE$:[139]A$[178]"D"[167]FILE$[178]"0:"[170]FILE$[170]",S,W":D[178]8:SA[178]10:[137]62
59 [153]"INSERT YOUR TAPE IN THE TAPE DRIVE
60 PRINT"PRESS A KEY TO CONTINUE."
61 GETA$:IFA$=""THEN61
62 OPEN1,D,SA,FILE$
63 PRINT#1,F$;CR$;
64 FORI=1TONM:TX$(I)=")"+TX$(I):PRINT#1,TX$(I);CR$;:TX$(I)=RIGHT$(TX$(I),LEN(TX$(I))-1):NEXT
65 PRINT#1,"ZZZZZ";CR$;:CLOSE1:GOSUB111:RETURN
66 GOSUB111:REM PRINTER
67 INPUT"DOUBLE SPACE[146] N[157][157][157]";SP$
68 PRINT"PUT YOUR PAPER IN THE PRINTER"
69 PRINT"IF YOU DO NOT WISH A TITLE, JUST PRESS RETURN."
70 INPUT"TITLE [160][157][157][157]";A$
71 IFA$="[160]"THENA$=" "
72 OPEN1,4:PRINT#1,CHR$(1),A$
73 CLOSE1:OPEN1,4,1
74 A$=""
75 FORI=1TO80:A$=A$+"A":NEXT
76 OPEN2,4,2:PRINT#2,A$:CLOSE2
77 FORI=1TONM:FLAG=2
78 IFPEEK(59468)=12THENPRINT#1,CHR$(160)TX$(I):GOTO87
79 IFTX$(I)=""THENPRINT#1:GOTO88
80 FORY=1TOLEN(TX$(I))
81 A=ASC(MID$(TX$(I),Y,1))
82 IFFLAG<>1THENIF((A>182)AND(A<219))THENY$="[145]"+CHR$(A-128):FLAG=1::GOTO85
83 IFFLAG=1ORFLAG=2ANDA>64ANDA<91THENY$=""+CHR$(A):FLAG=0:GOTO85
84 Y$=CHR$(A):IFA>182ANDA<219THENY$=CHR$(A-128)
85 Z$=Z$+Y$:NEXT
86 PRINT#1,CHR$(160),Z$:Z$=""
87 IFSP$="Y"THENPRINT#1
88 NEXT:CLOSE1:GOSUB111:RETURN
89 PRINT"[147]GOTO 4":END:REM QUIT
90 REM LOAD
91 GOSUB111:IFNM=55THENPRINT"FILE FULL[146]":RETURN
92 GOSUB144
93 D=1:SA=0:IFA$="D"THENFILE$="0:"+FILE$+",S,R":D=8:SA=10:GOTO98
94 PRINT"MOUNT YOUR TAPE. BE SURE IT IS REWOUND
95 [153]"PRESS A KEY TO CONTINUE
96 GETA$:IFA$=""THEN96
97 IFFILE$="[160]"THENFILE$=""
98 OPEN1,D,SA,FILE$
99 INPUT#1,A$
100 PRINT"LOADING:"A$
101 INPUT#1,A$
102 IF(ST)AND64THEN109
103 IFA$="ZZZZZ"THEN109
104 TX$(NM)=RIGHT$(A$,LEN(A$)-1)
105 PRINTTX$(NM)
106 NM=NM+1
107 IFNM=56THENGOTO109
108 GOTO101
109 CLOSE1:GOSUB111:RETURN
110 REM MENU
111 PRINT"[147]E[146]NTER S[146]CREEN SA[146]VE P[146]RINT Q[146]UIT L[146]OAD
112 [153]"CWAITHANGE:PART,DELETE,REPLACE,INSERT,COPY
113 RETURN
114 REM RED 80/06/30
115 PRINT""A$" ";
116 PRINT"---------+---------+---------*---------+---------+----------"
117 PRINT:PRINT"[145][145][145]"TAB(LEN(A$)+3);
118 RETURN
119 REM RED 80/06/30:REM INPUT ROUTINE
120 GETA$
121 GOSUB143
122 IFA$=","THENA$="[174]"
123 IFA$=""THEN120
124 IFA$=CR$THEN140
125 IFA$=IN$THEN120
126 IFA$=CHR$(34)THENA$="'"
127 IFA$<>DL$THEN130
128 IFLEN(SR$)<1THEN120
129 SR$=LEFT$(SR$,LEN(SR$)-1):PRINT"-[157][157]";:GOTO133
130 K=0:FORI=1TO8:IFA$=MID$(";:[147][145][157]",I,1)THENK=I
131 NEXT:IFK<>0THEN120
132 SR$=SR$+A$:PRINTA$;
133 IFPEEK(197)<>64AND(A$="[160]"ORA$=DL$)ANDLEN(SR$)<JJTHENFORV=1TO5:NEXT:GOTO120
134 IFLEN(SR$)<JJTHEN120
135 GETA$
136 GOSUB143
137 IFA$=CHR$(13)THEN140
138 IFA$=CHR$(20)THEN127
139 GOTO135
140 IFSR$=""THENSR$="NIL"
141 RETURN
142 REM CURSOR
143 PRINT"[166][157]";:FORI=1TO1:NEXT:PRINT" [157]";:RETURN
144 PRINT"T[146]APE OR D[146]ISK"
145 GETA$:IFA$<>"T"ANDA$<>"D"THEN145
146 INPUT"FILE NAME [160][157][157][157]";FILE$
147 RETURN